package com.lh.jianzhioffer.专项练习.链表;

import sun.font.EAttribute;

/**
 * @author: linghao
 * @since: 2023/3/7
 *
 * 给定两个单链表的头节点 headA 和 headB ，请找出并返回两个单链表相交的起始节点。如果两个链表没有交点，返回 null
 */
public class 两个链表的第一个重合节点023 {

    public ListNode getIntersectionNode(ListNode headA, ListNode headB) {
        if(headA == null || headB==null)return null;

        ListNode tempA=headA,tempB=headB;
        while (tempA != tempB){
            tempA = tempA == null ? headB : tempA.next;
            tempB = tempB == null ? headA : tempB.next;
        }
        return tempA;
    }


    public class ListNode {
      int val;
      ListNode next;
      ListNode(int x) {
          val = x;
          next = null;
      }
  }
}
